package com.css.zfzx.sjcj.modules.qhdrillhistogram.viewobjects;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.handler.inter.IExcelDataModel;
import cn.afterturn.easypoi.handler.inter.IExcelModel;
import lombok.Data;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;

/**
 * @author aa
 * @date 2020-11-11
 */
@Data
public class QhDrillHistogramVO implements Serializable, IExcelDataModel, IExcelModel {

    /**
     * 主键ID
     */
    @NotNull(message = "缺失")
    @Excel(name = "主键ID", width = 15)
    private String id;
    /**
     * 工程名称
     */
    @NotNull(message = "缺失")
    @Excel(name = "工程名称", width = 15)
    private String projectName;
    /**
     * 钻孔编号
     */
    @NotNull(message = "缺失")
    @Excel(name = "钻孔编号", width = 15)
    private String drillCode;
    /**
     * 孔口高程（m）
     */
    @NotNull(message = "缺失")
    @Excel(name = "孔口高程", width = 15)
    private String orificeElevation;
    /**
     * 孔口直径
     */
    @Excel(name = "孔口直径", width = 15)
    private String orificeDiameter;
    /**
     * 钻孔坐标格网X值
     */
    @NotNull(message = "缺失")
    @Excel(name = "钻孔坐标格网X值", width = 15)
    private String drillX;
    /**
     * 钻孔坐标格网Y值
     */
    @NotNull(message = "缺失")
    @Excel(name = "钻孔坐标格网Y值", width = 15)
    private String drillY;
    /**
     * 开工日期
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @NotNull(message = "缺失")
    @Excel(name = "开工日期", exportFormat = "yyyy-MM-dd", importFormat =  "yyyy-MM-dd", width = 15)
    private Date commencementDate;
    /**
     * 竣工日期
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @NotNull(message = "缺失")
    @Excel(name = "竣工日期", exportFormat = "yyyy-MM-dd", importFormat =  "yyyy-MM-dd", width = 15)
    private Date completionDate;
    /**
     * 稳定水位深度
     */
    @NotNull(message = "缺失")
    @Excel(name = "稳定水位深度", width = 15)
    private String stableWaterDepth;
    /**
     * 测量水位日期
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    @Excel(name = "测量水位日期", exportFormat = "yyyy-MM-dd", importFormat =  "yyyy-MM-dd", width = 15)
    private Date gageDate;
    /**
     * 地层编号
     */
    @NotNull(message = "缺失")
    @Excel(name = "地层编号", width = 15)
    private String formationCode;
    /**
     * 地层成因年代
     */
    @NotNull(message = "缺失")
    @Excel(name = "地层成因年代", width = 15)
    private String formationCauseAge;
    /**
     * 层底高程
     */
    @NotNull(message = "缺失")
    @Excel(name = "层底高程", width = 15)
    private String bottomElevation;
    /**
     * 层底深度
     */
    @NotNull(message = "缺失")
    @Excel(name = "层底深度", width = 15)
    private String bottomDepth;
    /**
     * 层厚
     */
    @NotNull(message = "缺失")
    @Excel(name = "层厚", width = 15)
    private String layerThickness;
    /**
     * 比例尺为不小于1：500的柱状图示
     */
    @NotNull(message = "缺失")
    @Excel(name = "比例尺为不小于1：500的柱状图示", width = 15)
    private String columnarDiagram;
    /**
     * 岩土名称
     */
    @NotNull(message = "缺失")
    @Excel(name = "岩土名称", width = 15)
    private String geotechnicalName;
    /**
     * 岩土特征
     */
    @NotNull(message = "缺失")
    @Excel(name = "岩土特征", width = 15)
    private String geotechnicalCharacteristics;
    /**
     * 取样深度及编号
     */
    @NotNull(message = "缺失")
    @Excel(name = "取样深度及编号", width = 15)
    private String sampleDepthCode;
    /**
     * 标准贯入实验实测值
     */
    @NotNull(message = "缺失")
    @Excel(name = "标准贯入实验实测值", width = 15)
    private String standardPenetrationNum;
    /**
     * 标准贯入实验实验深度
     */
    @NotNull(message = "缺失")
    @Excel(name = "标准贯入实验实验深度", width = 15)
    private String standardPenetrationDepth;
    /**
     * 省
     */
    @NotNull(message = "缺失")
    @Excel(name = "省", width = 15)
    private String province;
    /**
     * 市
     */
    @NotNull(message = "缺失")
    @Excel(name = "市", width = 15)
    private String city;
    /**
     * 区/县
     */
    @NotNull(message = "缺失")
    @Excel(name = "区/县", width = 15)
    private String area;
    /**
     * 乡/镇
     */
    @Excel(name = "乡/镇", width = 15)
    private String town;
    /**
     * 村
     */
    @Excel(name = "村", width = 15)
    private String village;
    /**
     * 附件
     */
    @Excel(name = "附件", width = 15)
    private String attachment;
    /**
     * 备注
     */
    @Excel(name = "备注", width = 15)
    private String remark;
    /**
     * 质检数据状态值
     */
    private String qualityinspectionStatus;
    /**
     * 审查时间
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date examineDate;
    /**
     * 质检时间
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date qualityinspectionDate;
    /**
     * 分区标识
     */
    private Integer partitionFlag;
    /**
     * 审查用户
     */
    private String examineUser;
    /**
     * 类别码+行政区划组合编码
     */
    private String objectCode;
    /**
     * 是否有效,0:无效,1:有效
     */
    private String isValid;
    /**
     * 审核数据状态值 0：未提交；1：已提交，2：审核通过；3：审核未通过
     */
    private String reviewStatus;
    /**
     * 创建时间
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date createTime;
    /**
     * 创建人
     */
    private String createUser;
    /**
     * 修改人
     */
    private String updateUser;
    /**
     * 质检意见
     */
    private String qualityinspectionComments;
    /**
     * 修改时间
     */
    @JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
    private Date updateTime;
    /**
     * 审查意见
     */
    private String examineComments;
    /**
     * 质检者
     */
    private String qualityinspectionUser;


    private String provinceName;
    private String cityName;
    private String areaName;

    private Integer rowNum;
    private String errorMsg;
}